package utils

import (
	"GIN-API/global"
	"mime/multipart"
)

// 文件上传

func UploadFile(file *multipart.FileHeader) (string, error) {
	src, err := file.Open()
	if err != nil {
		global.Logger.Println("无法打开文件: %v", err)
		return "", err
	}
	defer src.Close()
	// 指定文件夹名，项目统一上传到指定文件夹下
	folderName := "GIN-API/"
	fileName := folderName + file.Filename
	err = global.OSSBucket.PutObject(fileName, src)
	if err != nil {
		global.Logger.Println("无法上传文件到OSS: %v", err)
		return "", err
	}
	// 返回文件URL
	url := "https://" + global.Cfg.OSSBucketName + "." + global.Cfg.OSSEndpoint + "/" + fileName
	return url, nil
}
